import unittest
from common.open_browser import open_browser
from page.login_page import LoginPage
from page.index_page import IndexPage


class LoginTestCase(unittest.TestCase):
    # 前大夹具
    @classmethod
    def setUpClass(cls) -> None:
        # 打开浏览器,默认谷歌
        driver = open_browser()
        # 创建LoginPage和IndexPage对象
        cls.login = LoginPage(driver)
        cls.index = IndexPage(driver)

    def test1_login(self):
        # 请求网址 ecshop登录网址
        self.login.get('http://172.16.140.48/ecshop/user.php')

        # 登录操作 继承了,可以直接调用login_page里的方法
        self.login.input_username('wlyou')
        self.login.input_password('123456')
        self.login.input_remember()
        self.login.input_submit()

        # 断言登录成功
        # 登录成功后的页面显示的用户名,是否和登录时输入的用户账号一样
        username = self.index.font_text()
        self.assertEqual('wlyou', username)

    # 后大夹子
    @classmethod
    def tearDownClass(cls) -> None:
        # 退出浏览器
        cls.login.quit()


if __name__ == '__main__':
    unittest.main(verbosity=2)